package com.irdstudio.efp.console.service.facade;

import java.util.List;

import com.irdstudio.efp.console.service.vo.SOrgVO;


public interface SOrgService {
	
	public List<SOrgVO> queryAllOwner(SOrgVO sOrgVo);
	
	public List<SOrgVO> queryAllCurrOrg(SOrgVO sOrgVo);
	
	public List<SOrgVO> queryAllCurrDownOrg(SOrgVO sOrgVo);
	
	public int insertSOrg(SOrgVO sOrgVo);
	
	public int deleteByPk(SOrgVO sOrgVo);
	
	public int updateByPk(SOrgVO sOrgVo);
	
	public SOrgVO queryByPk(SOrgVO sOrgVo);
	/**
	 * 获取当前登录下法人机构码的机构信息
	 * @param sOrgVo
	 * @return
	 */
	public List<SOrgVO> queryLoginUserLeageOrgCode(SOrgVO sOrgVo);
	
	public List<SOrgVO> queryLeageOrgs(SOrgVO sOrgVo);
	/**
	 * 机构树
	 */
	public List<SOrgVO> queryOrgTrees(SOrgVO sOrgVo);
	/**
	 * 获取当前登录下的下属机构,根据法人机构过滤
	 * @param page
	 * @param size
	 * @return
	 */
	public List<SOrgVO> queryLoginOnlyLegalOrgCode(SOrgVO sOrgVo);
	/**
	 * 更新机构简称
	 * @param sOrgVo
	 * @return
	 */
	public int updateOrgSimpleName(SOrgVO sOrgVo);
	/**
	 * 
	 * @param sOrgVo 查询条件
	 * @return
	 */
	public List<SOrgVO> queryOrgByCondition(SOrgVO sOrgVo);
	
	/**
	  * 根据条件不分页查询所有机构数据
	  * @param sOrgVo
	  * @return
	  * @author qiuyf
	  * @since 2019年3月2日 下午4:34:32
	  * @version 1.0
	 */
	public List<SOrgVO> queryAllOrgsNoPage(SOrgVO sOrgVo);
	/**
	 * 
	 * TODO <br>
	 * 0.1:wanglihua:2019年4月19日 上午10:13:22:TODO <br>
	 * @author wanglihua
	 * @since 2019年4月19日 上午10:13:22
	 * @date 2019年4月19日 上午10:13:22
	 * @version 0.1 初始为0.1,后续变更则修改
	 */
	public SOrgVO queryOrgId(String nlsOperOrgid);


	/**
	 * 加载所有机构数据
	 * @return
	 */
	List<SOrgVO> queryAllOrgs();

	List<SOrgVO> queryforEachOrgsByChildOrgCode(String childOrgCode);

	/**
	 * 通过机构编号查询与之关联的上下级机构信息
	 * @param orgCode
	 * @return
	 */
	List<SOrgVO> queryAllByOrgCode(String orgCode);
}
